package com.meritdata.cloud.data.standard.quality.entity; /***********************************************************************
 * Module:  TD_DATA_QUALITY_RULE.java
 * Author:  Lenovo
 * Purpose: Defines the Class TD_DATA_QUALITY_RULE
 ***********************************************************************/

import javax.persistence.*;
import java.util.Date;

/** 质量规则表 */
@Entity
@Table(name="TD_DATA_QUALITY_RULE")
public class TdDataQualityRule {
	private static final long ROOT_ID = 1L;
	/** ID:ID */
	@Id
	@GeneratedValue
	private Long id;
	/** 规则名称:NAME */
	@Column(name="NAME")
	private String name;
	/** 规则描述:DESCRIPTION */
	@Column(name="DESCRIPTION")
	private String description;
	/**
	 * 维度，度量，日期
	 *
	 * 适用列类型:APPLY_COLUMN_TYPE
	 */
	@Column(name="APPLY_COLUMN_TYPE")
	private String applyColumnType;
	/**
	 * 0:禁用,1:启用
	 *
	 * 启用状态:ENABLE
	 */
	@Column(name="ENABLE")
	private int enable;
	/**
	 * 0:未发布,1:已发布
	 *
	 * 发布状态:PUBLISH_STATE
	 */
	@Column(name="PUBLISH_STATE")
	private int publishState;
	/**
	 * sql, local
	 *
	 * 规则类型:TYPE
	 */
	@Column(name="TYPE")
	private String type;
	/**
	 * 正则表达式0，值域1
	 *
	 * 规则条件类型:CONDITION_TYPE
	 */
	@Column(name="CONDITION_TYPE")
	private int conditionType;
	/** 规则条件表达式:CONDITION_EXP */
	@Column(name="CONDITION_EXP")
	private String conditionExp;
	/** 创建时间:CREATE_TIME */
	@Column(name="CREATE_TIME")
	private Date createTime;
	/** 修改时间:UPDATE_TIME */
	@Column(name="UPDATE_TIME")
	private Date updateTime;
	/** 创建人ID:CREATOR */
	@Column(name="CREATOR")
	private long creator;
	/** 修改人ID:UPDATE_ID */
	@Column(name="UPDATE_ID")
	private long updateId;

	public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getDescription() {
		return description;
	}
	public void setDescription(String description) {
		this.description = description;
	}
	public String getApplyColumnType() {
		return applyColumnType;
	}
	public void setApplyColumnType(String applyColumnType) {
		this.applyColumnType = applyColumnType;
	}
	public int getEnable() {
		return enable;
	}
	public void setEnable(int enable) {
		this.enable = enable;
	}
	public int getPublishState() {
		return publishState;
	}
	public void setPublishState(int publishState) {
		this.publishState = publishState;
	}
	public String getType() {
		return type;
	}
	public void setType(String type) {
		this.type = type;
	}
	public int getConditionType() {
		return conditionType;
	}
	public void setConditionType(int conditionType) {
		this.conditionType = conditionType;
	}
	public String getConditionExp() {
		return conditionExp;
	}
	public void setConditionExp(String conditionExp) {
		this.conditionExp = conditionExp;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
	public long getCreator() {
		return creator;
	}
	public void setCreator(long creator) {
		this.creator = creator;
	}
	public long getUpdateId() {
		return updateId;
	}
	public void setUpdateId(long updateId) {
		this.updateId = updateId;
	}

}